Un sistema operativo in informatica, è un software di base, detto anche piattaforma operativa (composto normalmente da più sottosistemi o componenti software: kernel, scheduler, file system, gestore della memoria, gestore delle periferiche, interfaccia utente ), che gestisce le risorse hardware e software della macchina, fornendo servizi di base ai software applicativi. Tra i sistemi operativi per computer desktop i più utilizzati sono Microsoft Windows, MacOS, le distribuzioni Linux, Chrome OS, mentre per i dispositivi mobili, quali smartphone e tablet, vi sono iOS, Android
I sistemi operativi servono per gestire le risorse e coordinare le attività di un computer o di un dispositivo elettronico. Forniscono un'interfaccia tra l'utente e il hardware, consentendo all'utente di interagire con il computer o il dispositivo in modo intuitivo e facilitato. I sistemi operativi svolgono numerose funzioni tra cui:
Il sistema operativo si trova tra l’hardware e altri software. Per rendere possibile il lavoro di gestione, il sistema operativo ha una struttura diversa rispetto a quella della maggior parte degli altri programmi. Si dice che i sistemi siano strutturati a diversi livelli. In quello inferiore, ossia quello più lontano dall’interfaccia utente, si trova il kernel, la parte più importante del sistema operativo. Questo programma, quindi, è il primo a caricarsi. Il kernel è l’interfaccia diretta all’hardware, lo inizializza e distribuisce i comandi dei programmi in funzione all’hardware. Su questo nucleo del sistema si basano poi altri livelli che si allontanano sempre di più dall'interazione con l’hardware. Ogni livello comunica quindi solo con quello che si trova a livello superiore o inferiore. Infine nella parte superiore si trova l’interfaccia utente, ossia l’interfaccia tra utenti e software. Se un utente svolge un’attività, questa istruzione viene inoltrata ai vari livelli fino al raggiungimento della posizione corretta.
il kernel è il componente centrale. È il ponte tra l’utente, le applicazioni e l’hardware del computer. Il kernel gestisce tutte le risorse di sistema del computer. Ciò include l’archiviazione a lungo termine, l’unità di elaborazione centrale (CPU), la memoria a breve termine e i dispositivi di input e output. Quando un’applicazione necessita di una di queste risorse, il kernel rende disponibile la risorsa e completa la richiesta. il kernel cambia le attività a una velocità così elevata che il computer sembra eseguire più attività. Il kernel è anche responsabile di assicurarsi che le risorse utilizzate da un utente o processo non vengano violate dalla richiesta di un altro utente o processo.
Lo scheduler è un componente fondamentale dei sistemi operativi multitasking, cioè quelli in grado di eseguire più processi (task) contemporaneamente. Lo scheduler si occupa di fare avanzare un processo interrompendone temporaneamente un altro, realizzando così un cambiamento di contesto (context switch). Generalmente computer con un processore sono in grado di eseguire un programma per volta, quindi per poter far convivere più task è necessario usare lo scheduler. Esistono vari algoritmi di scheduling che permettono di scegliere nella maniera più efficiente possibile quale task far proseguire. In un sistema possono esistere più scheduler:
un file system è quel meccanismo con il quale è possibile strutturare e organizzare i dati di una memoria di archiviazione ad accesso diretto e non solo, come un hard disk Hdd o Ssd, una chiavetta usb, un cd-rom oppure un’unità di protocollo di rete. Un file system possiede tutte le informazioni utili affinché sia possibile leggere, scrivere, ricercare, memorizzare ed eliminare i dati da qualsiasi supporto che li contenga. La sua struttura è di solito ad albero dove in qualsiasi struttura file system ci sarà una cartella di radice o directory e successivamente saranno presenti altre cartelle e sotto cartelle.
il gestore della memoria è un componente del sistema operativo dedicato alla gestione della memoria primaria disponibile sul computer. Il gestore si preoccupa di allocare, deallocare e gestire la memoria che viene assegnata llo stesso sistema operativo. La gestione della memoria è necessaria anche per tenere traccia di quanta memoria è impegnata e di quanta invece è disponibile per soddisfare nuove richieste. Nel caso il sistema disponga di un meccanismo di memoria virtuale, il gestore della memoria si occupa anche di mappare (indirizzare) la memoria virtuale offerta ai programmi sulla memoria fisica e sui dischi rigidi del sistema, copiando da memoria a disco rigido e viceversa le parti di memoria necessarie di volta in volta ai programmi, senza che i programmi stessi o gli utenti debbano preoccuparsi di nulla.
L'interfaccia utente descrive qualsiasi meccanismo mediante il quale un essere umano interagisce con una macchina o un computer quindi permette all'utente di interagire con il computer.
Microsoft Windows (comunemente indicato come Windows) è una famiglia di ambienti operativi e sistemi operativi prodotta da Microsoft Corporation dal 1985, orientato a personal computer, workstation, server e smartphone; prende il nome dall'interfaccia di programmazione
di un'applicazione a finestre (che si chiamano "windows" in lingua inglese), detta File Explorer.
Linux è un sistema operativo, ovvero quell'insieme di programmi essenziali per far funzionare il computer e farci qualcosa di utile o divertente. E' una alternativa a Windows e a macOS, e può essere installato al loro posto (o insieme, sullo stesso computer). Più in generale Linux è il primo rappresentante del software cosiddetto "libero" ("freesoftware", in inglese), ovvero quel software che viene distribuito con una licenza che ne permette non solo l'utilizzo da parte di chiunque ed in qualsiasi circostanza ma anche la modifica, la copia e l'analisi.
Cos'è MacOS MacOS è il sistema operativo che funziona sui computer Mac di Apple. È un sistema operativo proprietario sviluppato da Apple Inc. basato su Unix. MacOS è progettato per funzionare perfettamente con l'hardware di Apple, come computer Mac, laptop e server.
La storia dei sistemi operativi descrive l'evoluzione durante tutto il periodo di sviluppo dei Computer o calcolatori elettronici. Essa si sviluppa parallela a fianco della storia del computer e, più in generale, della storia dell'informatica. In un periodo delimitabile tra il 1945 e il 1955 gli elaboratori elettronici erano ammassi di valvole termoioniche, occupavano intere stanze, erano lentissimi e così costosi che potevano permetterseli soltanto grossi centri di calcolo o Università o organizzazioni dotate finanziariamente. A partire dagli anni 1960 con lo sviluppo dei primi mainframe si resero necessari software per l'utilizzo che consentissero l'interfacciamento degli utenti con tali macchine, l'evoluzione si accelerò a partire dagli anni 1970, soprattutto con l'avvento degli home computer e dei personal computer.